package com.jingdianjichi.auth.service;

import cn.dev33.satoken.stp.SaTokenInfo;
import com.jingdianjichi.auth.domain.entity.AuthUserBO;
import com.jingdianjichi.auth.infra.basic.entity.AuthUser;


/**
 *用户领域service
 * @since 2024-04-14 23:18:26
 */
public interface AuthUserDomainService {

    /**
     * 用户注册
     * @param authUserBO
     * @return
     */
    Boolean register(AuthUserBO authUserBO);

    /**
     * 更新用户信息
     * @param authUserBO
     * @return
     */
    Boolean update(AuthUserBO authUserBO);

    /**
     * 删除用户
     * @param authUserBO
     * @return
     */
    Boolean delete(AuthUserBO authUserBO);

    /**
     * 用户启用禁用
     * @param authUserBO
     * @return
     */
    Boolean changeStatus(AuthUserBO authUserBO);

    /**
     * 个人信息查询
     * @param authUserBO
     * @return
     */
    AuthUserBO getUserInfo(AuthUserBO authUserBO);

    /**
     * 验证码登录
     * @param validCode
     * @return
     */
    SaTokenInfo doLogin(String validCode);
}
